約 4,755,246 件
https://w.atwiki.jp/hmiku/pages/12815.html
【登録タグ D GUMI ジラートP 曲】 作詞:ジラートP 作曲:ジラートP 編曲:ジラートP 唄:GUMI 曲紹介 「やっと二人きりになれたね」と言って君は笑った とにかくやりたい放題な曲を作りました。(作者コメ転載) タイトルの Diabolism とは 「悪魔崇拝主義」。まさにそんな黒い一曲。 イラストは 水城葵氏 の描き下ろし。 ボーマス14にてリリースの完全破壊系コンピCD『 D project』の収録曲。 歌詞 不気味な君の視線 忘れて彼方行きたい 追うあの目 抗い叶わず僕は飲みこまれた あぁ 追い詰めて 囚われ 全ては君の余興 あぁ 自由になる翼が 君にもがれ打ち捨てられ 愛の言葉囁く君に ただ殺意だけ憶える あぁ 静寂 激痛 嬌声 交錯 自由になる翼が 君にもがれ打ち捨てられ 愛の言葉囁く君に ただ殺意だけ憶える あぁ コメント じわじわくる・・・!! -- 名無しさん (2011-10-22 10 59 27) 名前 コメント
https://w.atwiki.jp/englishlanguage/pages/1019.html
NET... Nettleback, Hugh Wilson. 2022. "Perceptions of Characters in Subtitled Film Strategies to Achieve Similarity in Japanese- and English-Speaking Audience Understanding". Interpreting and Translation Studies The Journal of the Japan Association for Interpreting and Translation Studies 22 31-51. Nettelbeck, Hugh Wilson. 2020. "Comparing Audience Perceptions of Characters in Subtitled Film Validating a Strategy for Assessing Equivalence of Character Voice". Journal of Audiovisual Translation 3(1) 50–71.
https://w.atwiki.jp/xbox360badgamer/pages/26.html
バグ使い以外の悪質なプレイヤーまとめ タグ どのような事をしたか などを書き込んでください。 ※ここでの暴言とは明らかに度の超えた物です *暴言ボイスチャット/メッセージの送信 *オンライン対戦での談合(boost行為、苦情報告によるアカウントBAN対象) *Wallhack、Aimbot等各種チート *ハードコアルールにおけるチームキル *ルール無視のキャンプ行為、及びキル稼ぎ行為 *被害者多数 特に注意するべきプレイヤー
https://w.atwiki.jp/swgstring/pages/72.html
タグ 翻訳待ち 1845 attack_result_fail_brief_dodge misses (dodge) 1846 attack_result_fail_brief_parry misses (parry) 1843 attack_result_fail_dodge misses (dodge) 1844 attack_result_fail_parry misses (parry) 1854 attack_result_success_blocked hits (%DI points blocked) 1850 attack_result_success_brief_blocked hits (blocked) 1827 attack_result_success_brief_critical crits 1847 attack_result_success_brief_crush punishing blows 1849 attack_result_success_brief_evade hits (evaded) 1826 attack_result_success_brief_glance glances 1848 attack_result_success_brief_strikethrough strikes through 1825 attack_result_success_critical crits 1851 attack_result_success_crush punishing blows 1853 attack_result_success_evade hits (%DI% evaded) 1828 attack_result_success_glance glances 1852 attack_result_success_strikethrough strikes through (%DI%) 1842 cannot_heal_droid You cannot heal droids. 1838 dont_have_ability You do not have that ability! 1841 incap_heal %TU has escaped death and regains %DF health. 1837 not_enough_action You don t have enough action points! 1823 perform_notarget %TU performs %TO. 1824 perform_target %TU performs %TO on %TT. 1829 perform_throwgrenade %TU throws a grenade at %TT. 1832 perform_throwgrenadebug %TU throws a bug grenade at %TT. 1830 perform_throwgrenadecryoban %TU throws a cryoban grenade at %TT. 1831 perform_throwgrenadefragmentation %TU throws a fragmentation grenade at %TT. 1833 perform_throwgrenadeglop %TU throws a glop grenade at %TT. 1834 perform_throwgrenadeimperialdetonator %TU throws an imperial detonator at %TT. 1835 perform_throwgrenadeproton %TU throws a proton grenade at %TT. 1836 perform_throwgrenadethermaldetonator %TU throws a thermal detonator at %TT. 1840 sm_double_hit_proc %TU gains Double Hit. 1839 sm_lucky_break_proc %TU gains Lucky Break. Patch41時点での未訳ファイル 98 attack_result_fail_brief_dodge misses (dodge) misses (dodge) 99 attack_result_fail_brief_parry misses (parry) misses (parry) 100 attack_result_fail_dodge misses (dodge) misses (dodge) 102 attack_result_fail_parry misses (parry) misses (parry) 107 attack_result_success_blocked hits (%DI points blocked) hits (%DI points blocked) 109 attack_result_success_brief_blocked hits (blocked) hits (blocked) 110 attack_result_success_brief_critical crits crits 111 attack_result_success_brief_crush punishing blows punishing blows 112 attack_result_success_brief_evade hits (evaded) hits (evaded) 113 attack_result_success_brief_glance glances glances 114 attack_result_success_brief_strikethrough strikes through strikes through 115 attack_result_success_critical crits crits 116 attack_result_success_crush punishing blows punishing blows 117 attack_result_success_evade hits (%DI% evaded) hits (%DI% evaded) 119 attack_result_success_glance glances glances 120 attack_result_success_strikethrough strikes through (%DI%) strikes through (%DI%) 224 cannot_heal_droid You cannot heal droids. You cannot heal droids. 303 crippling_pain %TU is wracked with crippling pain for %DI points of damage! %TU is wracked with crippling pain for %DI points of damage! 393 dont_have_ability You do not have that ability! You do not have that ability! 399 drain_hit %TU drains life from %TT for %DI points. %TU drains life from %TT for %DI points. 400 duality_detonate_other %TU s detonation strikes %TT for %DI points of damage. %TU s detonation strikes %TT for %DI points of damage. 401 duality_detonate_self The twin guardians energy detonates %TU for %DI points of damage. The twin guardians energy detonates %TU for %DI points of damage. 402 duality_detonate_twin The twins opposite charge lashes out into %TT for %DI points of damage. The twins opposite charge lashes out into %TT for %DI points of damage. 602 freeshot %TU snaps off a free shot! %TU snaps off a free shot! 688 immune --Immune-- --Immune-- 689 immune_get_hit %TT attacks you with %TO but you are Immune. %TT attacks you with %TO but you are Immune. 690 immune_hit_other You try to attack %TT with %TO but unable to attack while Immune. You try to attack %TT with %TO but unable to attack while Immune. 691 immune_target_hit You try to attack %TT with %TO but they are Immune. You try to attack %TT with %TO but they are Immune. 692 immune_target_hit_other %TT tries to attack you with %TO but they are unable to attack while Immune. %TT tries to attack you with %TO but they are unable to attack while Immune. 698 incap_heal %TU has escaped death and regains %DF health. %TU has escaped death and regains %DF health. 741 kun_open_share_pain You are rent by agony sharing %DI points of damage. You are rent by agony sharing %DI points of damage. 780 level_up Level br Up! LEVEL UP! 882 not_enough_action You don t have enough action points! You don t have enough action points! 956 perform_notarget %TU performs %TO. %TU performs %TO. 957 perform_target %TU performs %TO on %TT. %TU performs %TO on %TT. 958 perform_throwgrenade %TU throws a grenade at %TT. %TU throws a grenade at %TT. 959 perform_throwgrenadebug %TU throws a bug grenade at %TT. %TU throws a bug grenade at %TT. 960 perform_throwgrenadecryoban %TU throws a cryoban grenade at %TT. %TU throws a cryoban grenade at %TT. 961 perform_throwgrenadefragmentation %TU throws a fragmentation grenade at %TT. %TU throws a fragmentation grenade at %TT. 962 perform_throwgrenadeglop %TU throws a glop grenade at %TT. %TU throws a glop grenade at %TT. 963 perform_throwgrenadeimperialdetonator %TU throws an imperial detonator at %TT. %TU throws an imperial detonator at %TT. 964 perform_throwgrenadeproton %TU throws a proton grenade at %TT. %TU throws a proton grenade at %TT. 965 perform_throwgrenadethermaldetonator %TU throws a thermal detonator at %TT. %TU throws a thermal detonator at %TT. 1068 resist --Resisted-- --Resisted-- 1114 saber1hflurry2_block %TU uses Whirlwind of the Force on %TT for %DI points of damage, but %ST blocks it! %TU uses Whirlwind of the Force on %TT for %DI points of damage, but %ST blocks it! 1115 saber1hflurry2_counter %TU uses Whirlwind of the Force on %TT for %DI points of damage, but %ST counterattacks! %TU uses Whirlwind of the Force on %TT for %DI points of damage, but %ST counterattacks! 1116 saber1hflurry2_evade %TU uses Whirlwind of the Force on %TT for %DI points of damage, but %ST evades it. %TU uses Whirlwind of the Force on %TT for %DI points of damage, but %ST evades it. 1117 saber1hflurry2_hit %TU uses Whirlwind of the Force on %TT for %DI points of damage! %TU uses Whirlwind of the Force on %TT for %DI points of damage! 1118 saber1hflurry2_miss %TU s Whirlwind of the Force misses %TT. %TU s Whirlwind of the Force misses %TT. 1123 saber1hflurry_miss %TU s Cascade of Hatred misses %TT. %TU s Cascade of Hatred misses %TT. 1215 saberpolearmdervish2_block %TU uses Wrath of Kun on %TT for %DI points of damage, but %ST blocks it! %TU uses Wrath of Kun on %TT for %DI points of damage, but %ST blocks it! 1216 saberpolearmdervish2_counter %TU uses Wrath of Kun on %TT for %DI points of damage, but %ST counterattacks! %TU uses Wrath of Kun on %TT for %DI points of damage, but %ST counterattacks! 1217 saberpolearmdervish2_evade %TU uses Wrath of Kun on %TT for %DI points of damage, but %ST evades it. %TU uses Wrath of Kun on %TT for %DI points of damage, but %ST evades it. 1218 saberpolearmdervish2_hit %TU uses Wrath of Kun on %TT for %DI points of damage! %TU uses Wrath of Kun on %TT for %DI points of damage! 1220 saberpolearmdervish_block %TU uses Torrent of Enmity on %TT for %DI points of damage, but %ST blocks it! %TU uses Torrent of Enmity on %TT for %DI points of damage, but %ST blocks it! 1221 saberpolearmdervish_counter %TU uses Torrent of Enmity on %TT for %DI points of damage, but %ST counterattacks! %TU uses Torrent of Enmity on %TT for %DI points of damage, but %ST counterattacks! 1222 saberpolearmdervish_evade %TU uses Torrent of Enmity on %TT for %DI points of damage, but %ST evades it. %TU uses Torrent of Enmity on %TT for %DI points of damage, but %ST evades it. 1223 saberpolearmdervish_hit %TU uses Torrent of Enmity on %TT for %DI points of damage! %TU uses Torrent of Enmity on %TT for %DI points of damage! 1224 saberpolearmdervish_miss %TU s Torrent of Enmity misses %TT. %TU s Torrent of Enmity misses %TT. 1408 skill_up Skill br Up! SKILL UP! 1429 sm_double_hit_proc %TU gains Double Hit. %TU gains Double Hit. 1430 sm_lucky_break_proc %TU gains Lucky Break. %TU gains Lucky Break. 1725 unarmed_blind_block %TU does an Aryx Slash on %TT, but %ST blocks it! %TU does an Aryx Slash on %TT, but %ST blocks it! 1726 unarmed_blind_counter %TU does an Aryx Slash on %TT, but %ST counterattacks! %TU does an Aryx Slash on %TT, but %ST counterattacks! 1727 unarmed_blind_evade %TU does an Aryx Slash on %TT, but %ST manages to evade it. %TU does an Aryx Slash on %TT, but %ST manages to evade it. 1728 unarmed_blind_hit %TU does an Aryx Slash on %TT and blinds %OT! %TU does an Aryx Slash on %TT and blinds %OT! 1729 unarmed_blind_miss %TU s Aryx Slash misses %TT. %TU s Aryx Slash misses %TT. 1740 unarmed_dizzy2_block %TU uses Death Weave on %TT, but %ST blocks it! %TU uses Death Weave on %TT, but %ST blocks it! 1745 unarmed_dizzy_block %TU uses Stalking Silan on %TT, but %ST blocks it! %TU uses Stalking Silan on %TT, but %ST blocks it! 1746 unarmed_dizzy_counter %TU uses Stalking Silan on %TT, but %ST counterattacks! %TU uses Stalking Silan on %TT, but %ST counterattacks! 1747 unarmed_dizzy_evade %TU uses Stalking Silan on %TT, but %ST manages to evade it. %TU uses Stalking Silan on %TT, but %ST manages to evade it. 1748 unarmed_dizzy_hit %TU uses Stalking Silan on %TT and leaves %OT dizzy! %TU uses Stalking Silan on %TT and leaves %OT dizzy! 1749 unarmed_dizzy_miss %TU s Stalking Silan misses %TT. %TU s Stalking Silan misses %TT. 1766 unarmed_stun2_block %TU uses Mortichro on %TT, but %ST blocks it! %TU uses Mortichro on %TT, but %ST blocks it! 1767 unarmed_stun2_counter %TU uses Mortichro on %TT, but %ST counterattacks! %TU uses Mortichro on %TT, but %ST counterattacks! 1768 unarmed_stun2_evade %TU uses Mortichro on %TT, but %ST manages to evade it. %TU uses Mortichro on %TT, but %ST manages to evade it. 1769 unarmed_stun2_hit %TU uses Mortichro on %TT and stun %OT, doing %DI points of damage! %TU uses Mortichro on %TT and stun %OT, doing %DI points of damage! 1770 unarmed_stun2_miss %TU s Mortichro attack misses %TT. %TU s Mortichro attack misses %TT. 1774 unarmed_stun_hit %TU executes Gundark Fury on %TT and stuns %OT! %TU executes Gundark Fury on %TT and stuns %OT! 1775 unarmed_stun_miss %TU s Gundark Fury attack misses %TT. %TU s Gundark Fury attack misses %TT.
https://w.atwiki.jp/wasedapcp/pages/13.html
構文
https://w.atwiki.jp/spammailwiki/
■■■SPAM MAIL Wiki■■■ (略してSMWiki) ■目的 フリーソフト「Spam Mail Killer」を使いこなす。 Spam Mail(スパムメール)を排除する方法全般について語る。 ■方法 Spamメールのヘッダを解析し、Spamと認識する特徴を掴む。 掴んだ特徴をテンプレ化し、「Spam Mail Killer」へ組み込む。 以降、同じ形態のSpamを受け取らなくする。 ■Spam Mail Killerの入手先 製作者の土肥 英明氏のウェブサイトeimei's laboratory Vector 窓の杜 (どこからダウンロードしても同じです) ■■■ コンテンツ ■■■ ■条件分岐系(指定した条件に則り、確実に消去する) SPAM排除【Spam Mail Killer Tips】 ■調教系(到来するspamを学習させ覚えさせながら、徐々に賢く分別していく。成果が上がれば精度はきわめて良い) メール仕分け【POPFile Tips】 spamを消す手法として有効と思われる方法は、上記の2つの方式があります。条件分岐系は「確実に消す」ことが得意。 調教系は、「疑わしいものを消す」のが得意。 どちらも一長一短あります。メール受信をトータルに使いやすくするには、両方組み合わせると最強です。 ■このページは「Spam Mail Killer」非公式ページです Spam Mail Killerについての非公式ページですが、「Spam Mail Killer」作者の土肥さんからは活動の許可をいただいております。 なお、土肥さんより 引用元がわかるような表現ならば、 ・Spam Mail Killer のヘルプの引用 ・Spam Mail Killer サポート掲示板の「管理人(作者自身)」の 投稿内容の引用 ・Spam Mail Killer サポート掲示板の「管理人」の投稿に含まれる 禁止リストのサンプル転載、およびそれを改変した禁止リストの掲載 もかまいません。 という、ありがたいお言葉をいただきました。Wikiをつかって皆さんで力を合わせ、ハマリやすいポイント等についても、まとめていきたいと思います。 ■このページについて&おことわり(2005年11月8日作成) このページを元として、SPAM排除のノウハウを多くの方に伝えたいと考えています。そのため、みなさんの書いていただいた情報は、引用・転載・SPAM排除ソフトの作者様へ情報提供、等で使用させていただく場合があります。これらの二次使用に同意していただける方のみご参加ください。 ■管理人について 私のことは「SMWiki管理人」と呼んでください。 改善要望・感想・このページの拡張案等ありましたらメールください。spammailwiki あっと gmail.com なにかありましたら書いてください。 メニューバーに履歴を表示させました。SMKページの上部に項目の一覧を表示させました。カウンターをつけました。-- SMWiki管理人 (2005-11-09 03 37 33) ・単語変更(SPAM→Spam)。・タイトルの大文字は看板なのでこのままにします。・ページ名の「~について」がバカっぽいので変更しました。-- SMWiki管理人 (2005-11-09 12 22 25) 一応紹介のところのSpam Mail Killerでご本家にリンクしておくのはどうですか? -- 名無しさん (2005-11-09 19 02 08) ↑ありがとうございます。Spam Mail Killerの作者様へ、リンク許可依頼を出しました。少々お待ちください。-- SMWiki管理人 (2005-11-11 00 05 22) 当サイトのトップページ http //homepage1.nifty.com/eimei/ へのリンクは自由とします。と書いてありますが・・・ -- 名無しさん (2005-11-11 09 44 28) 土肥さんより回答いただきましたのでToppageに追記しました。-- SMWiki管理人 (2005-11-12 00 16 39) ~から来るスパムをIPアドレス範囲による複数要素で削除--------------------------------------------------CNCGROUP-LN RR[中国(.CN)]経由00100000 ip-address 60.16.0.0-60.23.255.25500100000 ip-address 221.200.0.0-221.203.255.25500100000 ip-address 221.200.0.0-221.200.31.25500100000 ip-address 218.60.0.0-218.61.255.25500100000 ip-address 218.24.0.0-218.25.255.255--------------------------------------------------CNCGROUP-JL[中国(.CN)]経由00000000 ip-address 221.8.0.0-221.9.255.25500000000 ip-address 218.27.0.0-218.27.255.25500000000 ip-address 222.160.0.0-222.163.31.25500000000 ip-address 58.244.0.0-58.245.255.255--------------------------------------------------ほんの一例ですが複数要素管理から登録するIPアドレス範囲を決め撃ちする事で、テンプレートから漏れたIPアドレスを的確に撃ち落したい人向け(精度重視で海外に知人が居ない人向け)ただし、テンプレートのフィルターをON必須で。(海外から来るスパムは、IPアドレスが範囲が細かい為誤爆よる正規のメールを削除しない為の配慮です)参考までに、中国経由で飛んでくるスパムのIPアドレス範囲の一部を出しますが中国経由のスパムはISPだけで結構な数なので、IPアドレスから送信元を割り出した後に、IPアドレス範囲と海外のISP名を登録しておく事で精度の高い削除が可能になります。(面倒であれば、纏めてしまい、禁止リスト@複数要素もいいかと思います)ちなみに、個人的に個別で分けているのは、あまりにウザイspamがどこのISPを経由してやってくるかが気になったので、敢えて個別にしています。おまけたまにスパマーが逃げ用に使っていると思われるIPアドレス滅多に飛んでこないのでSICNU-CN[中国(.CN)]経由00100000 ip-address 202.115.192.0-202.115.207.255-- MOHE (2007-03-16 00 24 52) 名前 コメント ページの使い方で分からないことは? [[@wikiの詳しい使い方はヘルプ・FAQ・初心者講座@wikiをごらんください。 http //www1.atwiki.jp/faq/]] ユーザ同士のコミュニケーションにはたすけあい掲示板をご利用ください 訪問者 - 本日訪問者 - 昨日訪問者 -
https://w.atwiki.jp/yama213/pages/28.html
グラフ描画について WinChart Infragistics(グレープシティ) 有料 ¥102,900 TrueWinChart:http //www.grapecity.com/japan/support/database/p7_387.htm ランタイムフリー…配布可能ファイルなら、配布してよし Chart FX for .NET ComponentSource 有料 ¥382,620 Chart FX for .NET:http //www.componentsource.co.jp/products/chart-fx-net/index.html MSChartコントロール Microsoft提供のグラフ作成ライブラリ デザイナーを使用するには、VisualStudio2008が必要だが、2005でも使用は可能。 .NETFramework4.0以降は標準装備されるらしい。 しかし、MSChartを実行環境にインストールする必要がある。 参考:http //www.kanazawa-net.ne.jp/~pmansato/net/net_mschart.htm サンプル:http //code.msdn.microsoft.com/mschart NPlot 3-clause-BSD 簡単な(質素な?)グラフ作成はできる。 どこまでカスタマイズ可能か… NPlot:http //netcontrols.org/nplot/wiki/index.php 参考:http //database-tearoom.seesaa.net/article/12916797.html http //database-tearoom.seesaa.net/article/13656686.html 円グラフ未実装 ZedGraph LGPLライセンス 逆コンパイルを認める必要あり? ライブラリ事態は使いやすいかも 拡大や移動もでき、高機能 ZedGraph:http //zedgraph.org/wiki/index.php?title=Main_Page 参考:http //www.atmarkit.co.jp/fdotnet/vblab/extcompo_02/zedgraph_01.html A flexible charting library for .NET LGPLライセンス QuickGraph Microsoft Public License (Ms-PL) QuickGraph:http //www.codeplex.com/quickgraph グラフというより、ダイアグラム系か? Piccolo2D 3-clause-BSD グラフというより、ダイアグラム系
https://w.atwiki.jp/bbs2ch/pages/8.html
bbs2ch.netとは誰が作ったの? 永遠のニートフェルリルが作りました bbs2ch.netはアングラなの? 誰もが自由に書き込みが出来る匿名掲示板のシステムには、アンダーグラウンド(UG アングラ)のイメージが付きまといますが、運営者としてはそういうスタンスではありません。 すべては利用する皆さんの良識にかかっています。。。よろしくです( ̄ー ̄)ニヤリッ 他人に迷惑をかけるのはやめようということです。。。 必要以上の馴れ合いは慎しむとか、暴言や第三者を不快にする書き込みはしないとか、悪質な削除要請や自己中心的な発言はひかえるとか、どれもむずかしくないことなんだけどなぁお約束・最低限のルール ルールを守らないとどうなるの? 削除されちゃいますです。。。 ほかにも、なにかが起こるかもしれないですよん。。。( ̄ー ̄)ニヤリッ 明らかなルール違反や削除ガイドライン違反の書き込みをみつけたら、削除依頼(削除整理・削除要請)にご協力ください。。。
https://w.atwiki.jp/touhoukashi/pages/4903.html
【登録タグ ESQUARIA ETERNITY WISH S 封じられた妖怪 ~ Lost Place 曲 綾倉盟】 【注意】 現在、このページはJavaScriptの利用が一時制限されています。この表示状態ではトラック情報が正しく表示されません。 この問題は、以下のいずれかが原因となっています。 ページがAMP表示となっている ウィキ内検索からページを表示している これを解決するには、こちらをクリックし、ページを通常表示にしてください。 /** General styling **/ @font-face { font-family Noto Sans JP ; font-display swap; font-style normal; font-weight 350; src url(https //img.atwikiimg.com/www31.atwiki.jp/touhoukashi/attach/2972/10/NotoSansCJKjp-DemiLight.woff2) format( woff2 ), url(https //img.atwikiimg.com/www31.atwiki.jp/touhoukashi/attach/2972/9/NotoSansCJKjp-DemiLight.woff) format( woff ), url(https //img.atwikiimg.com/www31.atwiki.jp/touhoukashi/attach/2972/8/NotoSansCJKjp-DemiLight.ttf) format( truetype ); } @font-face { font-family Noto Sans JP ; font-display swap; font-style normal; font-weight bold; src url(https //img.atwikiimg.com/www31.atwiki.jp/touhoukashi/attach/2972/13/NotoSansCJKjp-Medium.woff2) format( woff2 ), url(https //img.atwikiimg.com/www31.atwiki.jp/touhoukashi/attach/2972/12/NotoSansCJKjp-Medium.woff) format( woff ), url(https //img.atwikiimg.com/www31.atwiki.jp/touhoukashi/attach/2972/11/NotoSansCJKjp-Medium.ttf) format( truetype ); } rt { font-family Arial, Verdana, Helvetica, sans-serif; } /** Main table styling **/ #trackinfo, #lyrics { font-family Noto Sans JP , sans-serif; font-weight 350; } .track_number { font-family Rockwell; font-weight bold; } .track_number after { content . ; } #track_args, .amp_text { display none; } #trackinfo { position relative; float right; margin 0 0 1em 1em; padding 0.3em; width 320px; border-collapse separate; border-radius 5px; border-spacing 0; background-color #F9F9F9; font-size 90%; line-height 1.4em; } #trackinfo th { white-space nowrap; } #trackinfo th, #trackinfo td { border none !important; } #trackinfo thead th { background-color #D8D8D8; box-shadow 0 -3px #F9F9F9 inset; padding 4px 2.5em 7px; white-space normal; font-size 120%; text-align center; } .trackrow { background-color #F0F0F0; box-shadow 0 2px #F9F9F9 inset, 0 -2px #F9F9F9 inset; } #trackinfo td ul { margin 0; padding 0; list-style none; } #trackinfo li { line-height 16px; } #trackinfo li nth-of-type(n+2) { margin-top 6px; } #trackinfo dl { margin 0; } #trackinfo dt { font-size small; font-weight bold; } #trackinfo dd { margin-left 1.2em; } #trackinfo dd + dt { margin-top .5em; } #trackinfo_help { position absolute; top 3px; right 8px; font-size 80%; } /** Media styling **/ #trackinfo .media th { background-color #D8D8D8; padding 4px 0; font-size 95%; text-align center; } .media td { padding 0 2px; } .media iframe nth-of-type(n+2) { margin-top 0.3em; } .youtube + .nicovideo, .youtube + .soundcloud, .nicovideo + .soundcloud { margin-top 0.75em; } .media_section { display flex; align-items center; text-align center; } .media_section before, .media_section after { display block; flex-grow 1; content ; height 1px; } .media_section before { margin-right 0.5em; background linear-gradient(-90deg, #888, transparent); } .media_section after { margin-left 0.5em; background linear-gradient(90deg, #888, transparent); } .media_notice { color firebrick; font-size 77.5%; } /** Around track styling **/ .next-track { float right; } /** Infomation styling **/ #trackinfo .info_header th { padding .3em .5em; background-color #D8D8D8; font-size 95%; } #trackinfo .infomation_show_btn_wrapper { float right; font-size 12px; user-select none; } #trackinfo .infomation_show_btn { cursor pointer; } #trackinfo .info_content td { padding 0 0 0 5px; height 0; transition .3s; } #trackinfo .info_content ul { padding 0; margin 0; max-height 0; list-style initial; transition .3s; } #trackinfo .info_content li { opacity 0; visibility hidden; margin 0 0 0 1.5em; transition .3s, opacity .2s; } #trackinfo .info_content.infomation_show td { padding 5px; height 100%; } #trackinfo .info_content.infomation_show ul { padding 5px 0; max-height 50em; } #trackinfo .info_content.infomation_show li { opacity 1; visibility visible; } #trackinfo .info_content.infomation_show li nth-of-type(n+2) { margin-top 10px; } /** Lyrics styling **/ #lyrics { font-size 1.06em; line-height 1.6em; } .not_in_card, .inaudible { display inline; position relative; } .not_in_card { border-bottom dashed 1px #D0D0D0; } .tooltip { display flex; visibility hidden; position absolute; top -42.5px; left 0; width 275px; min-height 20px; max-height 100px; padding 10px; border-radius 5px; background-color #555; align-items center; color #FFF; font-size 85%; line-height 20px; text-align center; white-space nowrap; opacity 0; transition 0.7s; -webkit-user-select none; -moz-user-select none; -ms-user-select none; user-select none; } .inaudible .tooltip { top -68.5px; } span hover + .tooltip { visibility visible; top -47.5px; opacity 0.8; transition 0.3s; } .inaudible span hover + .tooltip { top -73.5px; } .not_in_card span.hide { top -42.5px; opacity 0; transition 0.7s; } .inaudible .img { display inline-block; width 3.45em; height 1.25em; margin-right 4px; margin-bottom -3.5px; margin-left 4px; background-image url(https //img.atwikiimg.com/www31.atwiki.jp/touhoukashi/attach/2971/7/Inaudible.png); background-size contain; background-repeat no-repeat; } .not_in_card after, .inaudible .img after { content ; visibility hidden; position absolute; top -8.5px; left 42.5%; border-width 5px; border-style solid; border-color #555 transparent transparent transparent; opacity 0; transition 0.7s; } .not_in_card hover after, .inaudible .img hover after { content ; visibility visible; top -13.5px; left 42.5%; opacity 0.8; transition 0.3s; } .not_in_card after { top -2.5px; left 50%; } .not_in_card hover after { top -7.5px; left 50%; } .not_in_card.hide after { visibility hidden; top -2.5px; opacity 0; transition 0.7s; } /** For mobile device styling **/ .uk-overflow-container { display inline; } #trackinfo.mobile { display table; float none; width 100%; margin auto; margin-bottom 1em; } #trackinfo.mobile th { text-transform none; } #trackinfo.mobile tbody tr not(.media) th { text-align left; background-color unset; } #trackinfo.mobile td { white-space normal; } document.addEventListener( DOMContentLoaded , function() { use strict ; const headers = { title アルバム別曲名 , album アルバム , circle サークル , vocal Vocal , lyric Lyric , chorus Chorus , narrator Narration , rap Rap , voice Voice , whistle Whistle (口笛) , translate Translation (翻訳) , arrange Arrange , artist Artist , bass Bass , cajon Cajon (カホン) , drum Drum , guitar Guitar , keyboard Keyboard , mc MC , mix Mix , piano Piano , sax Sax , strings Strings , synthesizer Synthesizer , trumpet Trumpet , violin Violin , original 原曲 , image_song イメージ曲 }; const rPagename = /(?=^|.*
https://w.atwiki.jp/memo77/pages/25.html
PageLastUpdate 2010-04-14/today - /yesterday - クリックすると見出し一覧を表示します 自作クラスとか最近やっと構造化例外処理と継承の基本が理解できた DataGridViewのグリッド、行、列、セルのReadOnlyプロパティの相関関係 NotifyIconはExplorer強制終了時のトレイアイコンの再描画も勝手にやってくれる 指定したウインドウを強制的にフォアグラウンドウィンドウに設定 .Net Remotingの「IPC ポートを作成できません。アクセスが拒否されました。」を解消 DataGridViewとDataGridのキーボード ショートカットの比較 ESCキーで行の変更をキャンセルするDataGridView Microsoft Visual Studio International Pack 1.0 My.Settingsの構成ファイルの場所を取得する。 Partial Classをメインのクラスのツリー下に配置する C#→VB.netへのコード変換サービス Visual Studio 2005 SP1 統合 installer の作成方法 再帰的にコントロールの親をたどって、ピリオド区切りでパスを返す関数 VBScriptのエラーコードメモ Visual Studio 2008 Express Edition チェックボックスでスプリットコンテナのパネルの表示をOn/Offする 配列をリストに変換する 型比較でハマる NewGUIDを文字列にするときの引数 My.Settingsに連結したコントロール間でChangedイベントで値をやり取りすると値が書き戻されることがある DataSet中の複数のテーブルをAccessのように連結して扱う 継承コントロールをデザイナで削除すると「インデックスが範囲を超えています」のエラー 継承したテキストボックスをフォームから削除しようとすると、エラーが出て削除されない。 ComboBoxに連結したDataTableが意図せずに変更される Express Edition ではセットアップ用のmsiはつくれない ComboBoxにはDoubleClickイベントがないのね CSVの読み込み 相手先別に添付ファイルを変更するメール送信ソフトを作ってみよう コンボボックスに高速にデータをBindするDataSourceを先に設定した場合 DataSourceを後に設定した場合 Microsoft Win32 と Microsoft .NET Framework API との対応 2005でデザイナから自動生成されるDataTableでのDBNull タイマーとメッセージボックス ワークステーションのロック LDAPとActive Directoryの要素の比較 DirectorySearcher手ごわい System.DirectoryServices.DirectoryEntry.SchemaClassNameの一覧 SelectCommandでデータ書き込むストアド指定するとコミットされない・・・んー 2005のヘルプにCrystal Reportのヘルプを追加とか TreeView使ってみた アップキャストとダウンキャスト IIFとdecimalでハマる GrapeCity FlexGrid for .NET 2.0J VB.Netに関する資料 ArrayListとList プロパティにオブジェクトを設定したときにNewのタイミング 自分自身と同じ型のコレクションをプロパティに持つ DateTimeメモ 再帰型のクラスでちょっとはまったこと ライブラリメモ LinkLabel ハッシュテーブル With Nothingを使って変数を局所化 共有メンバ よくつかうリンク comment オブジェクト指向から勉強中。ヘタレた内容だけど笑わないでね。 自作クラスとか DataGridViewEx 2007/11/19 拡張DataGridView。列位置や幅のユーザー別の保存とか DataGridViewSynchronizer 2007/11/13 上下に並べたふたつのDataGridViewの列表示を同期させるクラス。 WorkStationLockController 2007/07/16 PCのロックをしたりロック状態を取得するクラス DebugTimer 2007/07/23 デバッグ時に処理ごとのパフォーマンスを計測するクラス 最近やっと構造化例外処理と継承の基本が理解できた 2010/03/27 5年目にしてやっとわかったよ。片手間プログラマーはだめだなあ。 いままでのコードが恥ずかしてく、もう全部書き直したい。 公開しているコードもずっといいコードが書けるようになっているので、そのうち直す。かも。 DataGridViewのグリッド、行、列、セルのReadOnlyプロパティの相関関係 2010/03/27 1.グリッドのReadOnlyがTrueならセルのReadOnlyは実際に設定されている値とは別にReadOnlyを返します。 2.列のReadOnlyもしくは行のReadOnlyを変化させたときはTrueの時のみセルのReadOnlyが変更されます。 →True セルのReadOnlyもTrue →False セルのReadOnlyは変化しない(ReadOnly=Trueのセルは書き込めず、Falseのセルは書き込めるようになる) プロパティ部分をコードで書くとこんな感じ(雰囲気だけつかんでね)。 Public Property GridReadOnly() As Boolean Get Return _gridReadOnly End Get Set(ByVal value As Boolean) _gridReadOnly = value End Set End Property Public Property CellReadOnly() As Boolean Get If Me.Grid.ReadOnly = True Then Return True Else Return _cellReadOnly End If End Get Set(ByVal value As Boolean) _readOnly = value End Set End Property Public Property RowReadOnly() As Boolean Get Return _rowReadOnly End Get Set(ByVal value As Boolean) If value = True Then For Each cell As DataGridViewCell In Me.cells cell.ReadOnly = True Next End If _rowReadOnly = value End Set End Property Public Property ColumnReadOnly() As Boolean Get Return _columnReadOnly End Get Set(ByVal value As Boolean) If value = True Then For Each cell As DataGridViewCell In Me.cells cell.ReadOnly = True Next End If _columnReadOnly = value End Set End Property NotifyIconはExplorer強制終了時のトレイアイコンの再描画も勝手にやってくれる 2009/01/14 タスクトレイにアイコンを作成するアプリの作りが悪いと、エクスプローラーが強制終了したときに、プロセスだけ残ってトレイアイコンが消えてしまいます。 タスクマネージャからエクスプローラーを再起動しても、トレイアイコンは勝手には戻ってくれません。 これに対応するにはアプリケーション側でRegisterWindowMessage("TaskbarCreated")を拾ってやらないといけないわけですが、NotifyIconはこれも勝手にやってくれている模様。 偉いですね。 指定したウインドウを強制的にフォアグラウンドウィンドウに設定 2009/01/14 検索語:最前面、アクティブ、フォーム 久しぶりにプログラミング。APIを使わなければいけないにしろ、どこまでマネージドコードで書こうか悩む。 どうせ一関数内なら、全部APIにしちゃったほうが見通しがいいような気もするけど・・・ DllImport("user32.dll") Private Shared Function SetForegroundWindow(ByVal hWnd As IntPtr) As Boolean End Function DllImport("user32.dll") Private Shared Function GetForegroundWindow() As IntPtr End Function DllImport("user32.dll") Private Shared Function ShowWindowAsync(ByVal hWnd As IntPtr, ByVal nCmdShow As Integer) As Boolean End Function Private Const SW_RESTORE As Integer = 9 画面を元の大きさに戻す DllImport("user32.dll") Private Shared Function IsIconic(ByVal hWnd As IntPtr) As Boolean End Function DllImport("user32.dll") Private Shared Function GetWindowThreadProcessId(ByVal hwnd As IntPtr, ByRef lpdwProcessId As Integer) As Integer End Function DllImport("user32.dll") Private Shared Function AttachThreadInput(ByVal idAttach As Integer, ByVal idAttachTo As Integer, ByVal fAttach As Boolean) As Boolean End Function Public Shared Sub ActivateWindow(ByVal myHandle As System.IntPtr) Static myThreadProcessId As Integer = GetWindowThreadProcessId(myHandle, 0 ) こっちでもいいけど Static myThreadProcessId As Integer = System.Threading.Thread.CurrentThread.ManagedThreadId If IsIconic(myHandle) Then ShowWindowAsync(myHandle, SW_RESTORE) End If Static fgHandle As System.IntPtr = GetForegroundWindow() If myHandle fgHandle Then Dim fgThreadProcessId As Integer = GetWindowThreadProcessId(fgHandle, 0 ) AttachThreadInput(myThreadProcessId, fgThreadProcessId, True) SetForegroundWindow(myHandle) AttachThreadInput(myThreadProcessId, fgThreadProcessId, False) End If End Sub .Net Remotingの「IPC ポートを作成できません。アクセスが拒否されました。」を解消 2009/01/05 この情報は誤りでした。環境依存っぽい。 2009/01/04 検索語:開けない 1.アプリAを起動してチャンネルAを登録。こんなカンジ。 channel = New IpcServerChannel("ChannelA") ChannelServices.RegisterChannel(channel, False) RemotingConfiguration.RegisterWellKnownServiceType(myServiceClass.GetType, "ServiceClass", Runtime.Remoting.WellKnownObjectMode.SingleCall) 2.アプリBからChannelAに接続してなんか(Moge)する Public Sub Hoge Dim myServiceClass As ServiceClass = Activator.GetObject(GetType(ServiceClass), "ipc /ChannelA/ServiceClass") myServiceClass.Moge End Sub 3.アプリAを終了 4.アプリAを起動→「IPC ポートを作成できません。アクセスが拒否されました。」のエラー これに2年近く悩まされていたんですよ。 ポートを解放してくれるまでの時間を計測したり、再起動時に空くのを待機させてみたり、リース期間をアレコレいじったり。 つい最近まで「Windowsがポートを捕まえてる」んだと思ってたんですが、アプリBを落としてからアプリAを起動するとエラーが出ない。 アプリBがポートを捕まえてるという前提で見直して駄目もとでNothingを叩き込んでみる。 Public Sub Hoge Dim myServiceClass As ServiceClass = Activator.GetObject(GetType(ServiceClass), "ipc /ChannelA/ServiceClass") myServiceClass.Moge myServiceClass = Nothing ←コレを追加 End Sub なんとエラーが出なくなりました! ……お前、スコープってorz ちょっとでも怪しいと思ったところでは、リソースの開放は意識的にやるべきだという教訓。 DataGridViewとDataGridのキーボード ショートカットの比較 2008/06/17 DataGridViewのキーボード ショートカットを探したけど見つけられないorz とりあえずWindows フォームの DataGrid コントロール内の移動に使用できるキーボード ショートカットを元に、実際に動作検証をして比較表を作成してみた。 DataGridViewのキーボード ショートカットがまとめられているところか、この表に載っていない機能がありましたら、ぜひ教えて下さい(_o_) 印刷用にExcelファイルも用意しておきました→ダウンロード 区分 動作 DataGrid DataGridView 移動/外 タブ オーダー内の次のコントロールに移動します。 Ctrl + Tab ○ タブ オーダー内の 1 つ前のコントロールに移動します。 Ctrl + Shift + Tab ○ 移動/内 現在の行にある最初のセルに移動します。 Home ○ 現在の行にある最後のセルに移動します。 End ○ セルにフォーカスがある場合は、同一行の次のセルに移動します。行の最後のセルにフォーカスがある場合は次の行の最初のセルに移動します。 Tab ○ セルにフォーカスがある場合は、同一行の 1 つ前のセルに移動します。行の最初のセルにフォーカスがある場合は 1 つ前の行の最後のセルに移動します。 Shift + Tab ○ 矢印の方向にある最も遠い、空白でないセルへ移動します。 Ctrl + 方向キー × 左上のセルへ移動します。 Ctrl + Home ○ 右下のセルへ移動します。 Ctrl + End ○ 編集 現在のセルへの入力を終了し、次のセルへ移動します。 Enter ○ セル内が編集モードの場合は、セルの編集をキャンセルします。 Esc ○ マーキー選択の場合は、該当する行の編集をキャンセルします。 × セルを編集するときに、カーソル位置の前にある文字列を削除します。 BackSpace ○ セルを編集するときに、カーソル位置の後にある文字列を削除します。 Delete ○ 現在のセルの文字列を強調表示し、行の最後にカーソルを位置付けます。セルをダブルクリックするのと同じ動作になります。 F2 △ EditMode=EditOnEnter セルがフォーカスを受け取ったときに編集が開始されます。このモードは、Tab キーを押して行に値を入力するとき、または Enter キーを押して列に値を入力するときに便利です。 × フォーカス取得時 EditMode=EditOnF2 セルにフォーカスがあるときに F2 キーを押すと、編集が開始されます。このモードは、セルの内容の末尾を選択します。 × F2 EditMode=EditOnKeystroke セルにフォーカスがあるときに英数字キーを押すと、編集が開始されます。 × A-Za-z0-9 EditMode=EditOnKeystrokeOrF2 セルにフォーカスがあるときに英数字キーまたは F2 キーを押すと、編集が開始されます。 × A-Za-z0-9,F2 EditMode=EditProgrammatically BeginEdit メソッドが呼び出されたときにだけ編集が開始されます。 × BeginEdit 現在の行で EndEdit メソッドを呼び出します。 Ctrl + Enter ○ 編集モードのときにセルに System.DBNull.Value 値を入力します。 Ctrl + 0 ○ 選択 選択範囲を矢印の方向に 1 行分拡張します (子テーブルのリンクは除外します)。 Shift + ↑ または Shift + ↓ ○ 矢印の方向にある最も遠い、空白でない行まで選択範囲を拡張します (子テーブルのリンクは除きます)。 Ctrl + Shift + ↑ または Ctrl + Shift + ↓ × 一番上の行まで選択範囲を拡張します。 Ctrl + Shift + Home ○ 一番下の行まで選択範囲を拡張します。 Ctrl + Shift + End ○ 現在の行を選択します (子テーブルのリンクは除きます)。 Shift + Space △ SelectionMode=ColumnHeaderSelectのとき現在の列を選択 - Shift + Space SelectionMode=RowHeaderSelectのとき現在の行を選択 - Shift + Space グリッド全体を選択します (子テーブルのリンクは除きます)。 Ctrl + A ○ 選択範囲を 1 画面分下に拡張します (子テーブルのリンクは除きます)。 Shift + PageDown ○ 選択範囲を 1 画面分上に拡張します (子テーブルのリンクは除きます)。 Shift + PageUp ○ 子 フォーカスが子テーブルのリンクにある場合は、その子テーブルに移動します。 Enter - 子テーブルへのリンクを展開します。Alt キーを押しながら ↓ キーを押すと、選択されているリンクだけでなく、すべてのリンクが展開されます。 Alt + ↓ または Ctrl + プラス記号 (+) 子テーブルへのリンクを折りたたみます。Alt キーを押しながら ↑ キーを押すと、選択されているリンクだけでなく、すべてのリンクが折りたたまれます。 Alt + ↑ または Ctrl + マイナス記号 (-) 子テーブル内の場合は、親テーブルの行を表示します。 Ctrl + PageDown 子テーブル内の場合は、親テーブルの行を非表示にします。 Ctrl + PageUp フォーカスが行の最後のセルにある場合は、その行の最初の子テーブルへのリンクへ移動し、展開します。 Tab 子リンクにフォーカスがある場合は、次の子リンクに移動します。 最後の子リンクにフォーカスがある場合は、次の行の最初のセルに移動します。 行の最初のセルにフォーカスがある場合は、1 つ前の行の最後に展開された子テーブルへのリンク、または 1 つ前の行の最後のセルに移動します。 Shift + Tab 子リンクにフォーカスがある場合は、1 つ前の子リンクに移動します。 最初の子リンクにフォーカスがある場合は、1 つ前の行の最後のセルに移動します。 子テーブル内の場合は、親テーブルへ移動します。[戻る] をクリックするのと同じ動作になります。 Alt + ← ESCキーで行の変更をキャンセルするDataGridView 2008/06/16 検索語:キーボード ショートカット エスケープ DataTable DataGridViewはESCキーで編集のキャンセルができないので、とりあえず作ってみた。 Bindしている行がDataRowViewにDirectCastできるのが前提条件です。 Public Class DataGridViewEx Inherits DataGridView Private _rejectbyescape As RejectByEscapeType = RejectByEscapeType.None Public Enum RejectByEscapeType As Integer None = 0 CurrentRow = 1 SelectedRows = 2 End Enum Public Property RejectByEscape() As RejectByEscapeType Get Return _rejectbyescape End Get Set(ByVal value As RejectByEscapeType) _rejectbyescape = value End Set End Property Private Sub DataGridViewEx_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown Try If e.KeyCode = Keys.Escape Then 編集モードではなくReadOnlyでもなければRejectChanges (グリッドがReadOnlyのときはCurrentRowも自動的にReadOnlyになるのでCurrentRowだけで判定してOK) If (IsCurrentCellInEditMode = False) And (CurrentRow.ReadOnly = False) Then Select Case _rejectbyescape Case RejectByEscapeType.CurrentRow DirectCast(Me.CurrentRow.DataBoundItem, DataRowView).Row.RejectChanges() Case RejectByEscapeType.SelectedRows For Each dgvr As DataGridViewRow In SelectedRows DirectCast(dgvr.DataBoundItem, DataRowView).Row.RejectChanges() Next End Select End If End If Catch ex As Exception MessageBox.Show(ex.ToString ex.Message) End Try End Sub End Class Microsoft Visual Studio International Pack 1.0 2008/04/11 http //www.microsoft.com/downloads/details.aspx?FamilyID=f9cfc884-1f00-45fa-b2fb-303d9e110bc7 DisplayLang=ja East Asia Numeric Formatting Library 数値データを日本語、繁体字中国語、簡体字中国語および韓国語における漢数字の文字列に変換します。 Japanese Kana Conversion Library ひらがな、カタカナ、半角カタカナの相互変換、およびローマ字の変換をします。 Japanese Text Alignment Library 日本語固有の均等割付を用いて文字列を描画します。 Japanese Yomi Auto-Completion Library 日本語IME における読みの入力に対応したオートコンプリート機能を提供するライブラリとサンプルのTextBox コントロールを提供します。 My.Settingsの構成ファイルの場所を取得する。 2008/03/25 検索語:exe.config、user.config、ApplicationSettingsBase アプリケーション構成ファイル System.AppDomain.CurrentDomain.SetupInformation.ConfigurationFile ユーザー構成ファイル ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal).FilePath ネタ元:http //www.atmarkit.co.jp/fdotnet/dotnettips/558appsettings/appsettings.html ちなみに同一記事にもかかれているが、2005ではローミングユーザーであってもローカルユーザーのユーザー構成ファイルが使われてしまうようだ。せっかくローミングにも対応するように設計したつもりだったけど意味無い・・・。 別課題:過去の設定ファイル消せないと気持ち悪い。 Partial Classをメインのクラスのツリー下に配置する 2008/03/24 projファイルの中から目的の分割クラスの記述を見つけ、DependentUpon行を追加すればOK。 Compile Include="MainForm.Menu.vb" DependentUpon MainForm.vb /DependentUpon ←この行を追加 SubType Form /SubType /Compile SubTypeは消してもVisual Stdio上で一回開いて保存すると元に戻る。 C#→VB.netへのコード変換サービス 2008/03/24 http //codeconverter.sharpdevelop.net/Convert.aspx 使ってみた中ではコレが一番だった。 Visual Studio 2005 SP1 統合 installer の作成方法 2008/01/30 http //blogs.wankuma.com/tyappi/archive/2008/01/05/116016.aspx 再帰的にコントロールの親をたどって、ピリオド区切りでパスを返す関数 2008/01/21 例えばForm1のPanel1に乗っているTextbox1なら Form1.Panel1.TextBox1 と帰ってきます。 Public Function ControlPath(ByVal ctl As Control) As String Try If ctl.Parent Is Nothing Then Return ctl.Name Else Return ControlPath(ctl.Parent) "." ctl.Name End If Catch ex As Exception MessageBox.Show(ex.ToString) Return "" End Try End Function VBScriptのエラーコードメモ 2007/12/25 Descriptionが定義されていないものがある。一覧が見つけられない・・・。誰か教えて。 エラーコード 内容 -2147024843 たぶんネットワークパスが見つからないとき。 Visual Studio 2008 Express Edition 2007/12/18 ついにきました。まあいきなりインストールするわけにもいかないから、遊ぶのは正月休みですね。不具合情報の様子見でw なんと窓の杜から落とせるよ。 http //www.forest.impress.co.jp/lib/stdy/program/progdevenv/vbexedition.html ……と思ったら違いました。ダウンロード先は「作者サイト」になってるのね。 チェックボックスでスプリットコンテナのパネルの表示をOn/Offする 2007/12/06 検索語:CheckBoxでSplitContainerのPanelをOn/Off、反転、True、False SplitContainerのパネルを片側消したかったけど、Visibleでスプリッタが動いてくれないので「なんで?」と探したらPanel1Collapsed/Panel2Collapsedというわかりにくいプロパティでした。ヘルプには「縮小または展開するかどうかを決定する値を取得または設定します。」と書いてある。表現がわかりにくいっちゅうの。 で、チェックボックスをOnにしたときに表示、Offにしたときに非表示にしたいんだけど、CheckedとCollapsedの単純バインディングだと逆になってしまうので、Bindingオブジェクトの拡張クラスをつくってみた。 Private Class BindingReverseBoolean Inherits Binding Public Sub New(ByVal propertyName As String, ByVal dataSource As Object, ByVal dataMember As String) MyBase.New(propertyName, dataSource, dataMember, False, Windows.Forms.DataSourceUpdateMode.OnPropertyChanged) End Sub Private Sub BindingReverseBoolean_Format(ByVal sender As Object, ByVal e As System.Windows.Forms.ConvertEventArgs) Handles Me.Format e.Value = Not e.Value End Sub Private Sub BindingReverseBoolean_Parse(ByVal sender As Object, ByVal e As System.Windows.Forms.ConvertEventArgs) Handles Me.Parse e.Value = Not e.Value End Sub End Class で、FormのLoadでこんな感じに使います。 myCheckBox.DataBindings.Add(New BindingReverseBoolean("Checked", mySplitContainer, "Panel2Collapsed")) どうもバインディングオブジェクトは [Checked]⇒True=Format=False⇒[Collapsed]⇒False=Parse=True⇒[Checked] こういう感じに動くようだ。2回値がセットされる感じ。 今回は自分で使うだけで、絶対にBoolean以外がこないのはわかっているのでエラー処理はなし。 余裕があれば汎用的なクラスにしたいので、プロパティの型チェックとかいれる予定。 配列をリストに変換する 2007/11/18 リストを配列に変換するのはToArrayで簡単。配列をリストに変換する方法がわからない・・・3時間ぐらい調べてやっと見つけた。 http //d.hatena.ne.jp/Seasons/searchdiary?word=*%5BC%23%5D わかってみれば簡単でリストのコンストラクタに渡せばよいだけでした・・・ Dim myArray As String() = {"A","B","C"} Dim myList As List(Of String) = New List(Of String)(myArray) 固定値の入ったリストを作るときもこのほうがラク。 つか、ちょっとデキる人は絶対わかってるよな。「リストを配列に変換する」で検索してどうにもひっかからないっていうのは何故。 型比較でハマる 2007/11/18 オブジェクトのプロパティを列挙する処理を書いていたら、PropertyTypeの型のチェックで エラー5型 System.Type の式を型 String にすることはできません。 のエラーが出て、いろいろ書き換えてみてもどうにも通らない。 原因は「型の比較はTypeOfだ」という思い込みでした。 For Each pi As PropertyInfo In target.GetType.GetProperties Select Case True Case TypeOf pi.PropertyType Is String ←ここがダメ ... Case Else ... End Select Next ↓ For Each pi As PropertyInfo In target.GetType.GetProperties Select Case True Case pi.PropertyType Is GetType(System.Byte) ←これでOK ... Case Else ... End Select Next TypeOfはオブジェクトと型を比較するのね。型どうしの直接比較ならIsだけでよい。 気づかなかったのが恥ずかしい・・・。 NewGUIDを文字列にするときの引数 2007/11/10 よくわからなくなるのでメモ。xは16進数なので[0-9A-F]。 GUID.NewGUID.ToString("N") xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 32桁 GUID.NewGUID.ToString("D") xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ハイフンで区切られた 32 桁 GUID.NewGUID.ToString("B") {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} 中かっこで囲まれ、ハイフンで区切られた 32 桁 GUID.NewGUID.ToString("P") (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) 丸かっこで囲まれ、ハイフンで区切られた 32 桁 My.Settingsに連結したコントロール間でChangedイベントで値をやり取りすると値が書き戻されることがある 2007/11/08 実際に起こったのはチェックボックスのChackedChangedでテキストボックスに値を書き込んだら、チェックボックスの値が再度My.Settingから読み出されて変更する前に戻ってしまう。 検索したらMy.Settingsの挙動不審がいくつか見つかるので、バインドしたコントロール間でやり取りはしないほうが無難。 2007/11/15 Microsoftにも正式文書がありました。 http //msdn2.microsoft.com/ja-jp/library/a65txexh(VS.80).aspx 現在、Windows フォームの一部のプロパティはバインドできません。わかりやすい例は ClientSize プロパティです。 このプロパティにバインディングすると、実行時に予期できない動作が発生します。 通常、設定をプログラムで保存して読み込むことでこの問題を解決できます。 DataSet中の複数のテーブルをAccessのように連結して扱う 2007/10/26 アクセスがクエリを元にフォームをつくれるので、同じことがVB.netでもできないかなと探していたら、DataTable間にリレーションを設定し、DataColumnのExpressionを設定することで実現できました。 Private relationTest As System.Data.DataRelation Me.relationTest = New System.Data.DataRelation( _ "relationTest", New System.Data.DataColumn() {Me.tableA.ShohinCDColumn}, _ New System.Data.DataColumn() {Me.tableB.ShohinCDColumn}, _ false) Me.Relations.Add(Me.relationTest) Me.tableA.ShohinNameColumn.Expression = "Parent(rerarionTest).ShohinName" DataGridViewの列で処理することばかり考えていて、DataTableそのものに列を追加するというのは、ちょっと思いつかなかったな。 いままでコードに対応する名称をDataGridView上で表示するのにわざわざコンボボックスを使っていたので、これでとてもラクになりました。 DataTableはアクセスのクエリの役目も果たしてくれるのですね。 ちなみにここにはコードで載せていますが、これはDataSetのDesiner.vbから拾ってきたもので、実際にはデザイナオンリー、ノンコーディングで実現できています。 継承コントロールをデザイナで削除すると「インデックスが範囲を超えています」のエラー 2007/10/10 検索語:コンストラクタ Newの中でAddHandlerしたテキストボックスの継承コントロールで、デザイナで削除するときに インデックスが範囲を超えています。負でない値で、コレクションのサイズよりも小さくなければなりません。 パラメータ名 index のエラーメッセージが出るようになってしまった。いろいろ調査した結果、原因はAddHandlerだと判明。 AddHandler DataBindings.CollectionChanged, AddressOf DataBindings_CollectionChanged 最終的にはDisposeの中でRemoveHandlerを書くことで解決。 RemoveHandler DataBindings.CollectionChanged, AddressOf DataBindings_CollectionChanged 似たようなことをやっている他の継承コントロールでは起きないので、解放するリソースの種類や内部処理に依存しそう。 まあ「Disposeするときにきちんとすべてのリソースを解放しましょう」というのは当たり前のことだから、いままでAddHandlerの後始末をやっていなかったのがダメなんでしょう。たぶん。 「AddHandlerしたら必ずRemoveHandlerしましょう」とか、教えてくれる人もいなかったし、どこかに書いてあるのかなぁ。 継承したテキストボックスをフォームから削除しようとすると、エラーが出て削除されない。 2007/08/27 インデックスが範囲を超えています。負でない値で、コレクションのサイズよりも小さくなければなりません。 プロジェクトを開きなおすときちんと消えている。 継承したコントロールの中でやっている処理の問題だった。詳細な内容は後でかこう。 ComboBoxに連結したDataTableが意図せずに変更される 2007/10/04 検索語:コンボボックス/DataTable/DataView/DataSource/Bind/データが変わる DataTableにコンボボックスを連結したときに、既存データにコンボボックスに存在しない値が入っていると、レコードのCurrent時にコンボボックスの先頭の値に書き換えられてしまう。 FormattingEnabled をTrueにすることで解消できる。FormatString を設定する必要はない。 Express Edition ではセットアップ用のmsiはつくれない 2007/08/07 確実な情報が見つからないけど、つくれないっぽい。 ↓こういうの見つけた。んー、個人でここまで踏み込むかどうするか。会社でやる分にはVS.net使えるからなぁ。 WiXではじめるWindows Installer作成入門 ComboBoxにはDoubleClickイベントがないのね 2007/08/24 コンボボックスでDoubleClickイベントを使おうかと思ったらありませんでした。 CSVの読み込み 日本語の露出が少ないけどXmlCsvReaderというのがよさそう。テストしてみよう。 相手先別に添付ファイルを変更するメール送信ソフトを作ってみよう 2007/07/26 VB.netでメール送信するのは簡単そう。相手のアドレスと添付ファイルのリストから、メール送信するソフトを作ってみよう。 http //www.atmarkit.co.jp/fdotnet/dotnettips/017sendmail/sendmail.html ↑このアドレスは2003で、2005からはクラスが変わっていました。 http //www.microsoft.com/japan/msdn/vbasic/migration/tips/netmail/ 2007/07/28 うーん、SmtpClient はいろいろ問題がありそうな。POP before SMTPとかも自作しなきゃいかんし。 http //support.microsoft.com/default.aspx/KB/927858 2007/07/28 商用利用も含めてフリーライセンスのよさそうなライブラリを発見。 .NET用メール送受信クラスライブラリ (TKMP.DLL) ライセンスについて http //uwa.potetihouse.com/bbs/patio.cgi?mode=view no=139 自分で組めるようにもなりたいけど、とりあえず利用させていただいて、少しづつ力をつけよう。 コンボボックスに高速にデータをBindする 2007/07/24 DataSourceよりもValueMemberとDisplayMemeberを先に指定したほうが速いようです。 設定するたびにリクエリがかかる感じですね。 特に件数の多いテーブルをBindするときに効果的です。 DataSourceを先に設定した場合 DebugTimer.WriteLine("Testスタート") cboSample.DataSource = New DataView(dt) ←先に設定 DebugTimer.WriteLine("DataSourceをセット") cboSample.ValueMember = "連結したい列名" DebugTimer.WriteLine("ValueMemberをセット") cboSample.DisplayMember = "表示したい列名" DebugTimer.WriteLine("DisplayMemberをセット") MEMO 00 00 000 00 00 000 Testスタート MEMO 00 00 272 00 00 272 DataSourceをセット MEMO 00 00 540 00 00 268 ValueMemberをセット MEMO 00 00 808 00 00 268 DisplayMemberをセット DataSourceを後に設定した場合 DebugTimer.WriteLine("Testスタート") cboSample.ValueMember = "連結したい列名" DebugTimer.WriteLine("ValueMemberをセット") cboSample.DisplayMember = "表示したい列名" DebugTimer.WriteLine("DisplayMemberをセット") cboSample.DataSource = New DataView(dt) ←後に設定 DebugTimer.WriteLine("DataSourceをセット") MEMO 00 00 000 00 00 000 Testスタート MEMO 00 00 000 00 00 000 ValueMemberをセット MEMO 00 00 000 00 00 000 DisplayMemberをセット MEMO 00 00 296 00 00 296 DataSourceをセット Microsoft Win32 と Microsoft .NET Framework API との対応 2007/07/16 http //www.microsoft.com/japan/msdn/net/general/win32map.aspx 2005でデザイナから自動生成されるDataTableでのDBNull 2007/07/16 XというフィールドにDBNullが来るよねと思ってIsDBNull(X)で判定しようとしたら蹴られた。 なんで?と思ってクラスを見たら、テーブルのメソッドにIsXNullっていうのが作られてた。 なるほど。Nullの可能性のあるフィールドはこれで判断しろと。 タイマーとメッセージボックス 2007/07/16 メッセージボックスが出ているあいだもタイマーは動き続けているので、処理によっては固まる。注意。 ワークステーションのロック 2007/07/16 カンタンだった。 System.Diagnostics.Process.Start("rundll32.exe", "user32.dll,LockWorkStation") 2007/07/16 ロックかけるのは簡単だけど、ロックされているかどうかの判断が難しい。つか標準ではできない。 http //rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng.cgi?print+200612/06120018.txt Microsoft.Win32.SystemEventsのSessionSwitchを使うことで、 ロック開始のイベントとロック終了のイベントを受け取ることができます。 との情報を発見したので、ロック状態を管理しつつ、ロックをかけてくれるクラスを作成。 → WorkStationLockController 念のためsingletonをとっておく。singletonについては → http //hccweb1.bai.ne.jp/tsune-1/VisualBasic/singleton.html ちなみにsingletonをグローバル変数的に使うのはよくないというのは心しておく。 ワークステーションのロックについて調べていたら突き当たったサイト → http //www7a.biglobe.ne.jp/~lshen/EternalWindows/ GINAとか珍しいあたりをわかりやすく書いてくれてる。 フォアグラウンドウインドウを判定するのってAPI使うしかないのかなぁ。 → http //iseebi.half-done.net/?TechDoc%2FDetectionFullscreen LDAPとActive Directoryの要素の比較 2007/07/13 参考 http //publib.boulder.ibm.com/tividd/td/ITAME/SC32-1358-00/ja_JA/HTML/am51_webseal_devref101.htm 最大長 LDAP Active Directory 名 (LDAP CN) 256 64 ミドル・ネーム 128 64 姓 128 64 レジストリー UID (LDAP DN) 1024 2048 ユーザー・パスワード 制限無し 256 ユーザー記述 1024 1024 グループ名 256 グループ記述 1024 1024 シングル・サインオン・リソース名 240 256 シングル・サインオン・リソース記述 1024 1024 シングル・サインオン・ユーザー ID 240 256 シングル・サインオン・パスワード 制限無し 256 シングル・サインオン・グループ名 240 256 シングル・サインオン・グループ記述 1024 1024 アクション名 1 1 アクション記述、アクション・タイプ 制限無し 制限無し オブジェクト名、オブジェクト・スペース名、ACL 名、POP 名 制限無し 制限無し オブジェクト記述、オブジェクト・スペース記述、ACL 記述、POP 記述 制限無し 制限無し DirectorySearcher手ごわい 2007/07/13 http //www.microsoft.com/japan/msdn/community/gdn/ShowPost-33574.htm グループとユーザーの階層をノード的に取得しようとしたけど、手ごわい。 なんだよMemberofプロパティとかPrimaryGroupが取れないとか。 Microsoftのヘルプじゃまったくダメで、LDAPの仕様とか理解しないといけないところがツラい・・・ System.DirectoryServices.DirectoryEntry.SchemaClassNameの一覧 2007/07/12 ※とりあえず私が使ったものをメモっていきます。 ユーザー User グループ Group コンピュータ Computer サービス Service 検索をかけても一覧が見つからない・・・誰か教えて。 SelectCommandでデータ書き込むストアド指定するとコミットされない・・・んー 2007/07/10 DataAdapterのSelectCommandにデータの更新ありのストアドを投げると、戻ってきた結果は正しいのにデータベースには反映されてないみたい。 んー、いちいちコミットいれなきゃダメ? →mdfファイルが毎回コピーされてしまうためでした。 http //www.atmarkit.co.jp/fdotnet/dotnettips/532dbfilecopy/dbfilecopy.html 2005のヘルプにCrystal Reportのヘルプを追加とか 2007/07/09 http //salv.miscnotes.com/2005/01/tips5_vsnethelphelp.php TreeView使ってみた 2007/07/04 便利。同じTreeNodeオブジェクトを別のツリーに追加することはできなかった。 アップキャストとダウンキャスト 2007/06/14 アップキャスト 派生クラス→基本クラス 常にOK ダウンキャスト 基本クラス→派生クラス やらないほうがよい。できないこともある。 ダウンキャストについてはちょっと勉強したほうがよさそうだ。 IIFとdecimalでハマる 2007/06/12 DataTable.ColumnのExpressionを使用していて、floatだったフィールドをdecimalに変更したら何故か0除算のエラー。 IIF([分母]=0,0,[分子]/[分母]) とやって0除算をしてないはずなのに・・・・・・と半日ハマる。結論は IIFは真も偽も計算してから値を返すから IIFは普段は危険だから使わないんだけど、floatのときにエラーにならなかったので見落としました。 floatは0除算でエラーを返さないのね。 でもExpressionの中ってIIFしか条件式が使えない。やむをえず [分子]/CAST([分母], System.Double ) として回避。 GrapeCity FlexGrid for .NET 2.0J ダメだこれ。もうイヤ。 何がダメって、ColumnオブジェクトのNameプロパティが連結先のDataTableの列名。 で、複数のColumnに同じNameが設定できる。だからIndex以外で列を特定する術がない。 なのに、列位置を移動するとIndexが変わる。 頼むからNameは固有値にしてMappingName を指定させてくれ。 誰だこんなコントロール使うことにしたのは。二度と使わない。 いや、最新は4.0Jだから、よくなってるのかもしれないけれど。 VB.Netに関する資料 2007/04/22 オブジェクト倶楽部 http //www.objectclub.jp/ ここのトレーニングテキストが死ぬほど役立つ。入門用とリファレンスのちょうど中間あたりの本になりにくいあたりが解説されている。 2007/05/13 ちょっと見ようと思ったら見つけられない。C#のページにありました。 http //www.objectclub.jp/technicaldoc/c/training.pdf 2007/04/29 .NETでの正規表現の使用法 http //japan.internet.com/column/developer/20050822/28.html 2007/05/01 コンテキストメニューまわり http //vbdotnet.fc2web.com/vbnet/control/ContextMenuMenu.htm ArrayListとList 2007/04/22 自作クラスのコレクションを作れるに違いないと思って、ArrayListを調べて2時間。 どうしても型指定したコレクションがつくれないよー(。´Д⊂) と、泣きそうになったところでListに気がつく。 あまりにも最初にArrayListに慣れ親しんだために、それ以外思い浮かばなかった失敗。 2007/05/24 Listって.net 2005(Framework 2.0)からなので。自宅は2005、会社は2003なので、会社で使おうとして使えなくてがっかり。 プロパティにオブジェクトを設定したときにNewのタイミング 2007/04/22 プロパティ用のローカル変数に Private _objectname As Objecttype と宣言していてハマる。 Private _objectname As New Objecttype きちんとインスタンス意識しないとね。 自分自身と同じ型のコレクションをプロパティに持つ Private _childnodes As New List(Of LogNode) Public Property ChildNodes() As List(Of LogNode) Get Return _childnodes End Get Set(ByVal value As List(Of LogNode)) _childnodes = value End Set End Property 2007/04/22 とりあえず2日間ざっくり勉強して2日間ざくざく組んだら、少し勘が働いてきた。 言語って、あるレベルまでいかないと、目の前が開けないよね。一回開けてくると調査スピードも速くなる。 DateTimeメモ 2007/04/27 DateTimeの中身は#1/1/0 00 00 00#(西暦0年1月1日)からの経過ミリ秒 javascriptと値がずれるなと思ったら、javascriptは#1970/01/01 00 00 00#からの経過ミリ秒でした。 で、それでも誤差が32400ミリ秒出るので何かと思ったら、32400/60/60=9、ということで標準時との差。 再帰型のクラスでちょっとはまったこと クラスを通過するたびにカウントアップするような引数は参照渡しすること。 ライブラリメモ ファイルパスの分解 System.Io.Path ディレクトリ名はディレクトリを指定すればFileNameで取得できる .GetExtension 戻り値はピリオド付き ファイルの検索 System.Io.Directory 戻り値はString() ファイル情報 My.Computer.FileSystem.GetFileInfo .Length ファイルサイズの単位はバイト 正規表現 System.Text.RegularExpressions Regex.Match(Path.GetFileNameWithoutExtension(file), "^\d{1,5}$").ToString 後方参照で置換 .Replace(対象文字列," a href="http //~" (.*?) /a ","$1") ファイル名に使えない文字を置換 mystring=Regex.Replace(mystring, "[\\\/ ,;*?"" |]", "_") 文字コード System.Text.Encoding.GetEncoding("SHIFT-JIS") LinkLabel なんかハイパーリンクを使いたかったのでざくっと調べたらLinkLabelっていうコントロールがある。 テキストいれればクリックで勝手にブラウザ呼んでくれるのかと思ったら、呼び出しも書かなきゃいけないし、訪問済みかどうかも自分で設定しなきゃいけないみたい。不便。自分で変更できるのはありがたいとして、最初からブラウザと同期してくれてもいいと思うんだけど、なんでだろう。 まあ複数リンクも扱えるけど、もっとこう、さくっと。 ハッシュテーブル 2007/05/16 Addは使わなくても良い。 指定したキーがハッシュテーブルに存在しない場合には、新しい要素として登録される。 キーがすでに存在する場合には、インデクサではそのキーに対応する値が置き換えられるが、Addメソッドでは例外が発生する。 With Nothingを使って変数を局所化 2007/05/16 http //blogs.wankuma.com/jeanne/archive/2006/11/07/43926.aspx Sub Hoge With Nothing dim i as integer 処理 End With With Nothing dim i as integer 処理 End With End Sub みたいな形で変数のスコープを短くして使いまわせるという話。 共有メンバ 2007/05/17 ヘルプより 既定では、クラスのデータはクラスの各インスタンスに固有になります。ただし、1 つのクラスから作成したすべてのオブジェクト間で、1 つのデータ項目を共有する方が都合のよい場合もあります。このような場合には、Shared 修飾子を使用して、変数の同じ値をクラス内のすべてのインスタンスで共有できるようにします (共有メンバは、他のプログラミング言語では "静的メンバ" と呼ばれる場合もあります)。共有メソッドは、事前にクラスのインスタンスを作成しなくても、クラス名を使用して直接呼び出すことができます 参考:http //blogs.wankuma.com/torikobito/archive/2007/04/04/70121.aspx よくつかうリンク 2007/05/29 Visual Studio User Group comment このページの記述で聞きたいこととか間違ってることとかありましたらコメントを。 名前 コメント すべてのコメントを見る